////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2016, 2018 Qualcomm Technologies, Inc.
// All Rights Reserved.
// Confidential and Proprietary - Qualcomm Technologies, Inc.
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/// @file  camxhal3stream.cpp
/// @brief Definitions for HAL3Stream class.
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

#include "camxhal3stream.h"

CAMX_NAMESPACE_BEGIN

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// HAL3Stream::HAL3Stream
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
HAL3Stream::HAL3Stream(
    Camera3Stream* pStream,
    const UINT32   streamIndex,
    Format         bufferFormat)
    : m_pStream(pStream)
    , m_streamIndex(streamIndex)
    , m_streamReused(FALSE)
    , m_selectedFormat(bufferFormat)
    , m_HDRMode(HDRModeMax)
{
}

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// HAL3Stream::~HAL3Stream
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
HAL3Stream::~HAL3Stream()
{
}

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// HAL3Stream::IsStreamConfigMatch
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
BOOL HAL3Stream::IsStreamConfigMatch(
    const Camera3Stream* pStream
    ) const
{
    BOOL isMatch = TRUE;

    if (pStream != m_pStream)
    {
        isMatch = FALSE;
    }
    else if (pStream->streamType != m_pStream->streamType)
    {
        isMatch = FALSE;
    }
    else if (pStream->width != m_pStream->width)
    {
        isMatch = FALSE;
    }
    else if (pStream->height != m_pStream->height)
    {
        isMatch = FALSE;
    }
    else if (pStream->format != m_pStream->format)
    {
        isMatch = FALSE;
    }
    else if (pStream->dataspace != m_pStream->dataspace)
    {
        isMatch = FALSE;
    }
    else if (pStream->rotation != m_pStream->rotation)
    {
        isMatch = FALSE;
    }

    return isMatch;
}

CAMX_NAMESPACE_END
